Methods and systems for collapsing signal transfer point (STP) infrastructure in a signaling network

ABSTRACT

A multiple point code routing node is configured to recognize multiple point codes as true point codes. The multiple point code routing node originates, terminates, and processes messages having any of its any of its true point codes. As a result, the multiple point code routing node can replace two or more signal transfer points in a conventional telecommunications network without requiring reconfiguration of other nodes in the telecommunications network. Multiple point code routing node may also recognize multiple adjacent point codes or secondary adjacent point codes of a mated multiple point code routing node. Because the multiple point code routing node can associate multiple point codes with its mate, the number of logical or physical signaling links between adjacent multiple point code routing nodes can be increased.

RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.09/969,173, filed Sep. 28, 2001, now U.S. Pat. No. 6,606,379 whichclaims the benefit of U.S. Provisional Patent Application Ser. No.60/295,322, filed Jun. 1, 2001, the disclosures of each which areincorporated herein by reference in their entirety.

TECHNICAL FIELD

The present invention relates the message routing infrastructure of asignaling network. More particularly, the present invention relates tomethods and systems for collapsing or reducing signal transfer point(STP) infrastructure requirements in a signaling network.

BACKGROUND ART

Conventional telecommunications networks include two distinctcommunication pathways or subnetworks—a voice network and a signalingnetwork. These two networks function in a cooperative manner to set upand tear down calls between users. As implied by its name, the voicenetwork handles the transmission of voice (or user data) informationbetween users. The signaling network has a number of responsibilities,which include call setup, call teardown, and database access. In simpleterms, the signaling network facilitates the dynamic linking together ofa number of discrete voice-type communication circuits such that avoice-type connection is established between the calling and calledparty. Additionally, the signaling network provides a framework throughwhich non-voice-related information may be transported, with this dataand transport functionality being transparent to the users. Thissignaling technique is often referred to as out-of-band signaling, wherethe term “band” implies voice band. The signaling protocol most commonlyemployed in communication networks around the world is the signalingsystem 7 (SS7) protocol.

From a hardware perspective, an SS7 network includes a plurality of SS7nodes, generically referred to as signaling points (SPs), that areinterconnected using signaling links, also referred to as SS7 links. Atleast three types of SPs are included in an SS7 network: serviceswitching points (SSPs), signal transfer points (STPs) and servicecontrol points (SCPs). Within an SS7 signaling network, each SP isassigned an SS7 network address, which is referred to as a point code(PC).

An SSP is normally installed in Class 4 tandem or Class 5 end offices.The SSP is capable of handling both in-band signaling and SS7 signaling.An SSP can be a customer switch, an end office, an access tandem and/ora tandem. An STP routes signaling messages. STPs are usually installedas mated pairs for reliability purposes. Finally, SCPs control access todatabases, such as 800 number translation databases, 800 number carrieridentification databases, credit card verification databases, etc.

Signaling links are transmission lines used to connect SPs together.Conventional signaling links are dedicated bi-directional facilitiesoperating at 56 kbps in the U.S. and Canada and at 64 kbps when clearchannel capability is deployed. Normally, every link has a mate forredundancy and enhanced network integrity. It will be appreciated thatin some cases, traditional 56 kbps dedicated SS7 signaling links may bereplaced by high-speed, shared-bandwidth signaling links, such as IP orATM signaling links.

SS7 Signaling Network Architecture

FIG. 1 is a network diagram that depicts an exemplary SS7 network,generally indicated by reference numeral 100. As discussed above, STPsare typically deployed in a mated pair configuration for redundancy andreliability. However, for the purposes of illustration, only single STPsare shown in sample network 100. In FIG. 1 network 100 includes fourseparate networks 102, 104, 106, and 108. In the illustrated example,network 102 includes a pair of signaling points 118 and 120, network 104includes a pair of signaling points 122 and 124, network 106 includes apair of signaling points 126 and 128, and network 108 includes a pair ofsignaling points 130 and 132. STPs 110, 112, 114, and 116 perform SS7routing for networks 102, 104, 106, and 108, respectively. As indicatedin FIG. 1, STP A 110 is assigned a true point code (TPC) of 1-1-1, STP B112 is assigned a true point code of 2-2-2, STP C 114 is assigned a truepoint code of 3-3-3, and STP D 116 is assigned a true point code of4-4-4.

The term “true point code” as used herein refers to the point code thatan STP recognizes as its own for network management purposes. An STPterminates messages that are addressed to its true point code. A messageaddressed to the TPC of a particular STP would not be “through switched”or routed by the receiving STP but would instead be terminated andprocessed by the STP. STPs also use a TPC when originating networkmanagement messages.

In an SS7 signaling network there are three categories of networkmanagement: traffic management, link management, and route management.Traffic management is the process of diverting messages away from failedlinks. Link management involves the activation and deactivation ofsignaling links. Route management is responsible for both re-routingmessages around failed SS7 signaling points and controlling the flow ofmessages to any given signaling point in the network.

Those skilled in the art of SS7 signaling network operation willappreciate that such a network management strategy provides a layeredapproach to managing abnormal events in an SS7 network. The SS7 protocolprovides procedures designed to minimize the effects of networkcongestion and outages from the link level all the way up to the routelevel. Within the SS7 message transfer part (MTP) protocol, level two ofthe protocol detects errors on individual signaling links.

When an error on a signaling link is detected, level two reports theerror to level three, which in turn must determine the proper errorresolution procedures to invoke. In general, SS7 error resolutionprocedures begin at the lowest level, the link level, and work their wayup to the highest level, the route level. While these procedures do nothave a direct impact on routing or the status of signaling points, theydo, however, trigger other level-three network management events.

Traffic management is effected by link management primarily becausetraffic management must divert traffic away from a link that linkmanagement has failed and removed from service. In this manner, trafficmanagement ensures the orderly delivery of all diverted traffic. When alink fails, traffic management transfers unacknowledged messages toanother link buffer and subsequently retransmits these messages on adifferent, in-service signaling link. It should be noted that thetraffic management process does not divert traffic away from a signalingpoint. The purpose of traffic management is simply to redirect trafficat a signaling point to a different signaling link. Traffic managementdoes, however, impact routes and route-sets to specific destinations. Ifa particular route is used by another signaling point to reach adestination, and traffic management has diverted traffic away from thatroute, adjacent signaling points may have to invoke route managementprocedures.

At the highest level, route management diverts traffic away fromsignaling points that have become unavailable or congested. Regardlessof the root cause, traffic management and link management will beinvolved at the affected signaling point. At the same time, all thesignaling points around the affected signaling point are forced toinvoke route management procedures to prevent messages from becominglost.

In an SS7 network, the above-described network management functionalityis accomplished through the use of specific network management messages.A sample structure of a typical SS7 network management message ormessage signaling unit (MSU) 150 is illustrated in FIG. 2. It will beappreciated by those skilled in the art of SS7 signaling communicationsthat the signaling information field (SIF) 152 of MSU 150 includes dataassociated with a particular point code that is experiencing difficultyor a particular link that has failed. Additional status information,priority codes, and other relevant maintenance codes may also beincluded in SIF 152, depending upon the particular type of networkmanagement message being sent. A routing label field 154 may contain anumber of additional fields, including a destination point code (DPC)field 156, an originating point code (OPC) field 158, and a concernedpoint code (CPC) field 160. Depending on the particular type of networkmanagement message, the information conveyed in these fields may enablean adjacent node to determine which other node in the network isexperiencing difficulties and to which node in the network statusqueries should be directed. In most instances, a network managementmessage originated by an STP in a signaling network will include an OPCvalue that is the true point code assigned to that STP. Other affectednodes in the network use the TPC of the STP to direct related networkstatus queries to that STP. Because conventional STPs only have a singletrue point code, each STP is only capable of serving a single network.Stated differently, at least one STP per network is required for networkmanagement purposes.

There are a number of routing management messages commonly employed tore-direct traffic around a failed or congested route. Such messages maybe sent by an SS7 signaling point in response to the failure of one ormore provisioned links. More particularly, when a route fails, a routingmanagement message is sent to all neighboring SS7 signaling nodes (i.e.,those SS7 signaling nodes that are adjacent to the troubled signalingnode). This routing management message informs the neighboring SS7signaling nodes of the problem at the troubled node and also providesinstructions regarding future routing to the troubled node. Routingmanagement messages are also used to inform neighboring SS7 signalingnodes of the recovery of a previously troubled node. SS7 routingmanagement messages include: transfer prohibited (TFP), transferrestricted (TFR), transfer controlled (TFC), transfer allowed (TFA)messages, transfer cluster prohibited (TCP), and transfer clusterallowed (TCA). These messages are only a subset of all networkmanagement messages defined in the SS7 protocol.

A transfer prohibited message is generated and transmitted by an SS7signaling point (e.g., an STP) in response to determining thatcommunication with an SS7 node is no longer possible. A transferrestricted message may be sent in response to determining thatcommunication with an SS7 node is possible, but sub-optimal. A TFRmessage requests that adjacent SS7 signaling points use alternate routeswhen sending messages to the troubled SS7 node. If alternate routes arenot available, messages may continue to be routed normally. A transfercontrolled message is sent by an SS7 signaling point (e.g., an STP) inresponse to the receipt of an MSU destined for a congested route. Insuch a scenario, the MSU is discarded, and a TFC message is returned tothe originator or sender of the MSU. A transfer allowed message is sentby an SS7 signaling point when a previously failed route becomesavailable.

Referring back to FIG. 1, each network includes a single STP. It may bedesirable to reduce the number of STPs for cost, reliability, orregulatory reasons. However, as stated above, conventional STPs are onlycapable of performing network management using a single true point code.Thus, replacing multiple STPs with a single STP would requirere-provisioning of network nodes to communicate with the new STP.Reprovisioning all nodes in a network to communicate with a new STP isundesirable because of the time and labor involved in reprogramming eachindividual node. Accordingly, there exists a long-felt need for methodsand systems for seamlessly reducing the number of STPs in a signalingnetwork.

DISCLOSURE OF THE INVENTION

The present invention includes a multiple point code routing node thatassumes more than one true point code for SS7 routing and networkmanagement message origination and termination. STPs have conventionallyhad only one true point code. The present invention introduces theconcept of a secondary true point code, which allows a routing node,such as an STP, to function as if it has more than one true point code.A secondary true point code is different from a conventional capabilitypoint code in that true point codes are used for network managementmessages; whereas capability point codes are used for SCCP messages.

According to one aspect, the present invention includes a routing nodeprovisioned to respond to a true point code and a secondary true pointcode. The secondary true point code may correspond to the true pointcode of an STP being replaced by the routing node. Because a routingnode can be provisioned to respond to both a true point code and one ormore secondary true point codes, the signaling network infrastructurecan be simplified without reconfiguring network elements to communicatewith a new routing node having a new true point code.

According to another aspect, the present invention includes a method fororiginating network management messages from a multiple point coderouting node. When a multiple point code routing node receivesnotification of a network management event, such as a signaling linkfailure, the multiple point code routing node originates networkmanagement messages to other networks. When formulating a networkmanagement message, the multiple point code routing node inserts itstrue point code or one of its secondary true point codes in the OPCfield of a network management message, depending on the destinationnetwork. When sending messages to a mated routing node, the multiplepoint code routing node must select the correct DPC to include in thenetwork management message. For example, if a mated routing node has twotrue point codes, the multiple point code routing node originating anetwork management message chooses between the true point codesdepending on the replaced STP that would have originally received themessage. Finally, the multiple point code routing node may include aconcerned point code in the network management message to indicate thefailed signaling link. Because the multiple point code routing node iscapable of using multiple true point codes in network managementmessages that it originates, the network management functionality ofmultiple STPs can be seamlessly replaced.

In addition to the secondary point code addressing scheme discussedabove, a mated pair of MPC routing nodes of the present invention mayrecognize multiple adjacent point codes in order to facilitate thereliable communication of signaling messages (e.g., network managementmessages, call setup/teardown messages, query messages, etc.) betweenmates. An adjacent point code is the point code of a node at the remoteend of an SS7 signaling link. For example, STPs of a mated pair may beconnected by C links. In conventional SS7 networks, the adjacent pointcode recognized by each STP in a mated pair of STPs was set to thesingle true point code of its mate. Setting the adjacent point code tothe true point code of a mate STP allows each STP to reroute trafficthrough its mate STP in the event of a signaling link failure. STPsaccording to the present invention can be provisioned to respond tomultiple true point codes and to associate multiple adjacent point codeswith their mates. Because each STP of a mated pair can associatemultiple adjacent point codes with its mate, multiple C linksets can beused to interconnect the STPs. As a result, reliability of the pair isincreased.

In an alternate implementation, each STP of a mated pair may beconnected by one or more IP signaling links. In such an implementation,each STP may associate multiple adjacent point codes with its mate overthe IP signaling link. Thus, a single IP link may function as multipleSS7 C linksets by using multiple adjacent point codes. The ability tofunction as multiple logical C links over an IP link provides increasedreliability without the need for adding new SS7 C linksets.

The functions for providing multiple point code routing support aredescribed herein as modules, applications, or processes. It isunderstood that these modules, applications, or processes may beimplemented as computer-executable instructions embodied in acomputer-readable medium. Alternatively, the modules, applications, orprocesses described herein may be implemented entirely in hardware. Inyet another alternative embodiment, the modules, applications, orprocesses described herein may be implemented as a combination ofhardware and software.

The modules, applications, and processes for providing multiple pointcode routing functionality are described below as being associated withcards or subsystems within an STP or signaling gateway routing node. Itis understood that these cards or subsystems include hardware forstoring and executing the processes and modules. For example, each cardor subsystems described below may include one or more microprocessors,such as an x86 microprocessor available from Intel Corporation or aK-series microprocessor available from AMD Corporation, and associatedmemory.

Accordingly, it is an object of the present invention to provide arouting node that assumes the true point code identities of other signaltransfer point routing nodes in one or more SS7 signaling networks.

It is another object of the present invention to provide a routing nodethat replaces one or more STPs by assuming their true point codeidentities.

It is another object of the present invention to provide a system andmethod of collapsing or reducing STP infrastructure requirements in asignaling network environment while minimally impacting other signalingpoints in the signaling network environment.

It is another object of the present invention to provide a system andmethod for enabling multiple SS7 signaling links and linksets to beprovisioned between a mated pair of STPs.

It is yet another object of the present invention to provide a routingnode for maintaining SS7 network management integrity while assumingmultiple true point code identities.

It is yet another object of the present invention to provide a routingnode that functions as a plurality of virtual STPs, where each virtualSTP communicates with adjacent nodes using a different true point code.

It is yet another object of the present invention to provide a matedpair of routing nodes that communicate with one another using aplurality of different adjacent point codes.

It is yet another object of the invention to provide an STP capable ofserving multiple networks.

Some of the objects of the invention having been stated hereinabove,other objects will become evident as the description proceeds, whentaken in connection with the accompanying drawings as best describedhereinbelow.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a network diagram illustrating a conventional signalingnetwork environment including multiple signal transfer points.

FIG. 2 is a diagram illustrating an exemplary signaling system 7 networkmanagement message structure.

FIG. 3 is a block diagram of an SS7 routing node architecture suitablefor use with embodiments of the present invention.

FIG. 4 is a network diagram illustrating a conventional signalingnetwork environment including multiple mated STP pairs.

FIG. 5 is a network diagram illustrating a collapsed version of thesignaling network environment shown in FIG. 4 using MPC routing nodesaccording to an embodiment of the present invention.

FIG. 6 is a block diagram of a multiple point code routing nodeaccording to an embodiment of the present invention.

FIG. 7 is a block diagram of an SS7 link interface module (LIM)illustrating message flow associated with the receipt of a signalingmessage by an MPC routing node according to an embodiment of the presentinvention.

FIG. 8 is a network diagram illustrating the network managementfunctionality of an MPC routing node according to an embodiment of thepresent invention.

FIG. 9 is a flow chart illustrating exemplary network management messagegeneration steps performed by the multiple point code routing nodeillustrated in FIG. 8.

DETAILED DESCRIPTION OF THE INVENTION

Embodiments of the present invention may include an underlying hardwareplatform similar to a signaling system 7 signal transfer point orsignaling gateway (SG) routing node. Exemplary STP or SG hardwareplatforms suitable for use with embodiments of the present inventioninclude the EAGLE® STP and the IP⁷™ Secure Gateway, both available fromTekelec of Calabasas, Calif. A block diagram that generally illustratesthe base internal architecture of the IP⁷™ Secure Gateway is shown inFIG. 3. In FIG. 3, an IP⁷™ Secure Gateway 250 includes the followingsubsystems: a maintenance and administration subsystem (MAS) 252; acommunication subsystem 254 and an application subsystem 256. MAS 252provides maintenance communications, initial program load, peripheralservices, alarm processing and system disks. Communication subsystem 254includes an interprocessor message transport (IMT) bus that is the maincommunication bus among all subsystems in IP⁷™ Secure Gateway 250. TheIMT bus includes two 125 Mbps counter-rotating serial rings.

Application subsystem 256 includes application cards (printed circuitboards) capable of communicating with the other cards through the IMTbus. Numerous types of application cards can be incorporated into SG250, including: a link interface module (LIM) 258 that interfaces withSS7 links and X.25 links; a data communication module (DCM) 260 thatprovides an Internet protocol interface using transmission controlprotocol (TCP); and an application service module (ASM) 262 thatprovides global title translation, gateway screening and other services.A translation service module (TSM) 264 may also be provided to supporttriggered local number portability service.

Network Architecture

FIG. 4 illustrates in detail a portion of the signaling networkenvironment presented in FIG. 1. More particularly, FIG. 4 illustratesnetworks 102 and 104. Mate STPs have been additionally depicted withinboth the network 102 and network 104. As such, STP 110 in network 102 iscoupled to a mate STP 140, while STP 112 in network 104 is coupled to amate STP 142. In the illustrated example, network 102 SPs 118 and 120are assigned signaling system 7 point codes of 1-0-0 and 1-0-1,respectively. Similarly, SPs 122 and 124 in network 104 are assigned SS7point code of 2-0-0 and 2-0-1, respectively. Network 102 mated STPs 110and 140 are assigned unique, true point code values of 1-1-1 and 1-1-2,respectively. Network 104 mated STPs 112 and 142 are assigned unique TPCvalues of 2-2-2 and 2-2-3, respectively.

With particular regard to the TPC assignments of the mated STPs innetwork 102, those skilled in the art of STP design and operation willappreciate that STP 110 considers the TPC of STP 140 (i.e., 1-1-2) asthe adjacent point code (APC) of it's mate. Similarly, STP 140 considersthe TPC of STP 110 (i.e., 1-1-1) as the adjacent point code of it'smate. Within network 104, similar APC considerations between the matedSTP pair 112 and 142 apply. That is, STP 112 considers the TPC of STP142 (i.e., 2-2-3) as the adjacent point code of it's mate, and STP 142considers the TPC of STP 112 (i.e., 2-2-2) as the adjacent point code ofit's mate. Thus, it is apparent from FIG. 4 that each STP in aconventional SS7 network can have only one true point code and canrecognize only one adjacent point code.

With further regard to the issue of adjacent point codes, SPs in anetwork that are directly coupled to an STP also consider the TPC ofthat STP to be an adjacent point code. As such, an SP may be adapted or“programmed” to communicate network management messages directly to theTPC of an adjacent STP. Further still, within a large signaling network(larger than the sample network presented in FIG. 4), there may be otherSPs which are not directly coupled to a particular STP but whichregularly communicate with the STP by addressing signaling messages tothe unique TPC associated with the STP.

If the network operator(s) of the networks 102 and 104 wish toconsolidate or minimize their STP routing infrastructure by eliminatingone of the mated pairs of STPs and re-connect the orphaned SPs to theremaining STP pair, all of the orphaned SPs connected to the eliminatedSTP pair would need to be re-provisioned or re-assigned to the TPC ofthe remaining STP pair. In a large signaling network, suchre-provisioning efforts can be significant and expensive.

FIG. 5 illustrates a variation of the network environment presented inFIG. 4, wherein the STP routing infrastructure has been collapsed from 2pairs of STPs to one pair of MPC routing nodes according to anembodiment of the present invention. More particularly, in FIG. 5, themated STP pair in network 102 (i.e., STPs 110 and 140) and the mated STPpair in network 104 (i.e., STPs 112 and 142) have been removed andreplaced with a mated pair of MPC routing nodes 270 and 280. In theillustrated embodiment, an MPC routing node 270 has been assigned a truepoint code of 1-1-1, which is the same TPC formerly assigned to STP 110.MPC routing node 270 has also been assigned an additional secondary truepoint code or secondary point code of 2-2-2, which is the same TPCformerly assigned to STP 112. Similarly, MPC routing node 280 has beenassigned a true point code of 1-1-2, which is the same TPC formerlyassigned to STP 140. MPC routing node 280 has also been assigned anadditional secondary true point code or secondary point code of 2-2-3,which is the same TPC address formerly assigned to STP 142.

In FIG. 5, MPC routing nodes 270 and 280 recognize multiple adjacentpoint codes for their respective mates. More particularly, MPC routingnode 270 recognizes 1-1-2 as the adjacent point code for one linkset and2-2-3 as an adjacent point code of MPC routing node 270 on anotherlinkset. Similarly, MPC routing node 280 recognizes 1-1-1 as theadjacent point code on one linkset and 2-2-2 as the adjacent point codeof MPC routing node 270 on another linkset. Because MPC routing nodes270 and 280 each recognize multiple adjacent point codes for theirrespective mates, the number of logical or physical signaling linksbetween MPC routing nodes 270 and 280 can be increased. As a result, thereliability of MPC routing nodes 270 and 280 can be increased.

According to an important aspect of the invention, MPC routing nodes 270and 280 treat their respective secondary point codes the same as theirrespective true point codes. That is, MPC routing nodes 270 and 280originate network management messages from their secondary true pointcodes and terminate and process messages addressed to their secondarypoint codes in the same manner as messages addressed to their true pointcodes. As a result, SPs 118 and 120 in network 102 are still connectedto an STP-like routing node that uses a point code of 1-1-1 to originatenetwork management messages to SPs 118 and 120 and to receive andprocess network management messages from SPs 118 and 120. As such, nore-provisioning of either SP 118 or 120 is required to transition fromthe network architecture shown in FIG. 4 to the collapsed routinginfrastructure architecture shown in FIG. 5. Similarly, SPs 122 and 124in network 104 are still connected to a routing node that uses a pointcode of 2-2-2 to originate network management messages to SPs 122 and124 and receive and process network management messages from SPs 122 and124. Again, this is the case because MPC routing node 270 supports andis identified by a secondary true point code value of 2-2-2. Because MPCrouting nodes 270 and 280 respond to and originate network managementmessages addressed to the true point codes of the replaced STPs, nore-provisioning of either SP 122 or 124 is required to transition fromthe network architecture shown in FIG. 4 to the collapsed routinginfrastructure architecture shown in FIG. 5.

The present invention is not limited to a multiple point code routingnode that supports only two true point codes. For example, if a multiplepoint code routing node replaces three STPs, then the MPC routingsupport may terminate three true point codes. Any number of true pointcodes may be supported by a multiple point code routing node of thepresent invention.

Multiple Point Code Routing Node Architecture

FIG. 6 is a block diagram illustrating an exemplary internalarchitecture for a multiple point code routing node according to anembodiment of the present invention. In FIG. 6, MPC routing node 270 iscoupled to a first SS7 signaling network 266 and to a second SS7signaling network 268. The ability to connect a routing node to multiplenetworks without reconfiguring the networks is one of the features andadvantages of the present invention.

MPC routing node 270 illustrated in FIG. 6 includes a high-speedinterprocessor message transport communications bus 320. A number ofdistributed processing modules or cards are coupled to IMT bus 320including: a pair of maintenance and administration subsystem processors(MASPs) 272; a first SS7-capable link Interface module 300; and a secondSS7-capable link Interface module 350. These modules are physicallyconnected to the IMT bus 320 such that signaling and other type messagesmay be routed internally between all active cards or modules. Forsimplicity of illustration, only a single pair of LIM processors 300 and350 are included in FIG. 6. However, the present invention is notlimited to a routing node having two link interface modules. Thedistributed, multi-processor architecture of the MPC routing node 270may include multiple LIM and other processing and communication cards,all of which may be simultaneously connected to and communicating viaIMT bus 320.

From a hardware perspective, LIMs 300 and 350 may each comprise aprinted circuit board physically connected to IMT bus 320. Each printedcircuit board may include a communication processor programmed to sendand receive messages via IMT bus 320. Each printed circuit board mayalso include an application processor programmed to perform variousfunctions. For example, the application processor of LIM 350 may beprogrammed to perform the functions described herein for sending andreceiving SS7 network management messages using multiple true pointcodes.

MASP pair 272 implement the maintenance and administration subsystemfunctions described above. As MASP pair 272 are not particularlyrelevant to a discussion of the flexible routing attributes of thepresent invention, a detailed discussion of their function is notprovided herein.

SS7 Link Interface Module Architecture

Referring to FIG. 7 and focusing now on LIM card functionality, LIM 300is comprised of a number of applications including: an SS7 messagetransfer part (MTP) level 1 application 302; an SS7 message transferpart (MTP) level 2 application 304; an I/O buffer or queue 306; adiscrimination application 308; a routing application 310; adistribution application 312, and a network management application 314.MTP level 1 application 302 provides the facilities necessary to sendand receive digital data over a particular physical medium, such as aDS0 communication link or an optical communication link, such as an OC-nsignaling link. Working in conjunction with the MTP level 1 application302, MTP level 2 application 304 performs error detection, errorcorrection, and sequenced delivery of SS7 message packets. I/O queue 306provides temporary buffering of incoming and outgoing SS7 signalingmessage packets. Discrimination application 308 receives signalingmessages from the lower processing layers and performs a discriminationfunction, effectively determining whether an incoming SS7 message packetrequires internal processing or is simply to be through-switched.

According to an important aspect of the invention, discriminationapplication 308 is configured to recognize multiple true point codes aspoint codes of MPC routing node 270 and to recognize multiple adjacentpoint codes of a mated MPC routing node, such as MPC routing node 280illustrated in FIG. 5. Thus, in the example illustrated in FIG. 5,discrimination application 308 of MPC routing node 270 may be configuredto recognize true point codes of 1-1-1 and 2-2-2. Discriminationapplication 308 may also be configured to recognize adjacent point codesof 1-1-2 and 2-2-3. Because discrimination application 308 recognizesthese point codes as true and adjacent point codes, discriminationapplication 308 will identify received messages having these point codesas requiring further processing by MPC routing node 270 or adjacent MPCrouting node 280.

Routing application 310 routes messages received from discriminationapplication 308 that do not require further processing at the MPCrouting node and are simply to be through-switched. Distributionapplication 312 performs the internal routing of SS7 message packetsreceived from discrimination application 308 that require additional byMPC routing node 270 processing prior to final routing. Routingapplication 310 may utilize data stored in a routing and secondary pointcode database 316 to route and distribute received messages. Sincerouting application 310 receives messages from discriminationapplication 308 that are not addressed to one of the true point codesrecognized by MPC routing node 300, routing application 310 utilizes thedata stored in database 316 to determine the appropriate outbound cardor processing module within multiple point code routing node 270 todirect these messages. In one embodiment, database 316 includes an SS7routing table and a linkset table. The routing and linkset tablescontain signaling route and signaling route status information, alongwith internal IMT bus routing information.

Table 1 shown below illustrates an exemplary data structure andassociated data for the routing table.

TABLE 1 Routing Data DATA FIELDS KEY Route Linkset Adjacent OverallLinkset Secondary DPC Cost Status Status Status Name Point Code 1-0-0 10A A A LS1 1-1-1 1-0-0 20 P A P LS2 1-1-1 1-0-1 10 A A A LS3 1-1-1 1-0-120 A P P LS4 1-1-1 1-1-2 10 A A A LS5 1-1-1 1-1-2 20 A A A LS6 1-1-12-0-0 10 A A A LS7 2-2-2 2-0-0 20 A A A L58 2-2-2 2-0-1 10 A A A LS92-2-2 2-0-1 20 A A A LS10 2-2-2 2-2-3 10 A A A LS11 2-2-2 2-2-3 20 A A ALS12 2-2-2In Table 1, the routing data includes a destination point code keyfield, which may be used to index the table. DPC key fields, eachcorresponding to a different signaling protocol point code addressingscheme, may also be employed in an alternate embodiment of the presentinvention. For example, one DPC key field signaling protocol may be usedto accommodate an American National Standards Institute (ANSI) pointcode format. Another DPC key field may be included in Table 1 forInternational Telecommunications Union-international (ITU-I) point codeformat. Yet another DPC field may be included in Table 1 forITU-national (ITU-N) point code format. ITU national and internationalsignaling protocols utilize a 14 bit point codes, while the ANSIsignaling protocol employs a 24 bit point codes. However, for simplicityof illustration, only an ANSI-formatted DPC values are shown in therouting table.

In addition to the DPC field, Table 1 includes a route cost field, alinkset status field, an adjacent node status field, an overall statusfield, a linkset identifier or pointer field, and a secondary point codefield. The route cost field includes a value that indicates the relativecost associated with the route. The linkset status field includes anidentifier or value that indicates the status of the signaling linkassociated with the particular DPC value. The adjacent status fieldstores values or identifiers that indicate whether or not the linksetassociated with an adjacent node is available. The overall status fieldstores values that indicate whether or not a linkset or an adjacentlinkset is available. The linkset name field stores an identifier orvalue of the linkset associated with a particular destination pointcode.

According to an important aspect of the invention, the secondary pointcode field in Table 1 stores secondary point codes that are placed inthe originating point code field of network management messagesoriginated by the multiple point code routing node. For example, themultiple point code routing node may replace an STP in a signalingnetwork, and the replaced STP may have had a true point code of 1-1-1.The multiple point code routing node will assume the secondary pointcode of 1-1-1 and treat that point code as its true point code when itreceives a network management message addressed to 1-1-1. When themultiple point code routing node is communicating with a signaling pointconfigured to communicate with the replaced STP, the multiple point coderouting node will use the value 1-1-1 in the originating point codefield for messages that the multiple point code routing node originates.Because the multiple point code routing node according to an embodimentof the present invention is capable of assuming multiple secondary pointcodes and using those point codes in messages that it originates, usinga multiple point code routing node to replace one or more signaltransfer points in a network can occur seamlessly.

Table 2 shown below illustrates exemplary linkset data that may be usedby an MPC routing node according to an embodiment of the presentinvention.

TABLE 2 Linkset Data KEY (s) DATA FIELDS Linkset IMT/Card Link AdjacentName Link Address Port Status Point Code LS1 0 1305 A A 1-0-0 LS1 1 1307B U 1-0-0 LS2 1 1505 B A 1-0-0 LS2 2 2300 A A 1-0-0 LS5 0 3301 A A 1-1-2LS5 1 3312 B A 1-1-2 LS11 0 1105 A A 2-2-3 LS11 1 1205 A A 2-2-3 A2B 01401 A A 1-1-2Table 2 may be accessed using a compound key including a linksetidentifier and a signaling link. Table 2 includes IMT bus address andport fields that store IMT bus address and communication portinformation associated with communication modules that are connected toIMT bus 320. More particularly, a record in the linkset table includesan IMT address and communication port value associated with acommunication module that supports the specific link identified in therecord key. For example, as shown in Table 2, link 0 of linkset 1resides on a communication module that has an IMT bus address of 1305and a communication port address of “A.” Furthermore a link status fieldindicates that link 0 of linkset 1 is available for service. Table 2also includes an adjacent point code field that contains informationthat identifies the signaling node that is connected at the distant endof a signaling link.

The SS7 routing table (Table 1) returns an index value or pointer usedin a second database lookup the linkset table (Table 2). The ultimateresult of this two-stage lookup procedure is an IMT bus address andcommunications port associated with a signaling link on a communicationmodule. The present invention is not limited to the data structuresillustrated in Tables 1 and 2 for routing received messages. Any datastructure that takes a destination point code maps the point code to alinkset and a signaling link may be used. In addition, LIM 300illustrated in FIG. 7 may include applications and databases other thanthose shown. The functionality illustrated in FIG. 7 is merely intendedto illustrate the components of LIM 300 that may be used to performmultiple point code routing and distribution according to embodiments ofthe present invention.

LIM 300 may also include a secondary adjacent point code table used bynetwork management application 314 to originate network managementmessages on IP links that interconnect mated multiple point code routingnodes. As used herein, the term “secondary adjacent point code” refersto a point code associated with a signaling node at the distant end ofan IP linkset. Table 3 shown below illustrates exemplary secondaryadjacent point code information that may be used for originating networkmanagement messages.

TABLE 3 Secondary Adjacent Point Code Data Linkset Name SAPC A2B 2-2-3In Table 3, entries for a single linkset, A2B, are shown. However, it isunderstood that Table 3 may include entries for multiple linksets in anactual implementation. The use of each of the fields in Table 3 will nowbe described with reference to a network management example. Referringto FIG. 5, A2B may be associated with a link between MPC routing node270 and SP 122. When a signaling link between MPC routing node 270 andSP 122 fails, MPC routing node 270 needs to inform its mate as well asother nodes connected to MPC routing node 270. Accordingly networkmanagement application 314 of MPC routing node 270 generates a networkmanagement message. Network management application 314 may perform alookup in Table 1 to determine the OPC to include in the networkmanagement message. In this example, the CPC is 2-0-0. Accordingly,network management application 314 performs a lookup in the DPC/CPCfield in Table 1 to locate an entry corresponding to the CPC. In Table1, the SPC that matches the CPC of 2-0-0 is 2-2-2. Accordingly, networkmanagement application 314 inserts 2-2-2 in the OPC field of the networkmanagement message. Referring to FIG. 4, the point code 2-2-2corresponds to STP 112, which was replaced by MPC routing node 270illustrated in FIG. 5. Since STP 112 is in the same network as SP 2-0-0,MPC routing node 270 preferably uses the true point code of STP 112 inthe OPC field of network management messages that STP 112 would haveoriginated.

In order to determine the correct DPC to use in the network managementmessage to be sent to its mate, network management application 314 ofMPC routing node 270 first performs a lookup in Table 2 for the adjacentpoint code to insert in the DPC field using the linkset name A2B, whichcorresponds to the linkset between MPC routing nodes 270 and 280. InTable 2, the adjacent point code corresponding to linkset A2B is 1-1-2.Next, MPC routing node 270 determines whether the selected APC value of1-1-2 corresponds to the OPC of 2-2-2. This can be accomplished byperforming a lookup in Table 1 using the APC of 1-1-2 as the search key.In this example, it can be seen that the secondary point codecorresponding to 1-1-2 is 1-1-1, which is different from the OPC of2-2-2. Accordingly, network management application 314 does not use1-1-2 in the DPC field of the message. Instead, network managementapplication 314 performs a lookup in Table 3 using the linkset name A2Bas a search key. From Table 3, the SAPC corresponding to linkset A2B is2-2-3. Network management application 314 must then determine whetherthis SAPC value matches the OPC selected for the message. This may beaccomplished by performing a lookup in Table 1. From Table 1, it can beseen that the secondary point code corresponding to 2-2-3 is 2-2-2,which matches the OPC selected for the message. Accordingly, networkmanagement application 314 inserts the DPC of 2-2-3 in the message androutes the message to mate MPC routing node 280.

Thus, from this example, it can be seen that an MPC routing nodeaccording to an embodiment of the present invention is capable ofselecting the correct true or secondary true point code to insert in theOPC field of a network management message. The MPC routing node is alsocapable of selecting the correct APC or SAPC corresponding to true orsecondary true point code selected for the DPC field of the networkmanagement message. As a result, an MPC routing node according toembodiments of the present invention can originate network managementmessages to a mate MPC routing node when the mate MPC routing nodereplaces multiple STPs.

Multiple Point Code Routing

In routing a message, when LIM 300 receives a message, the message isprocessed by MTP level 1 application 302 and MTP level 2 application 304and stored in I/O queue 306. Discrimination application 308 thenanalyzes the destination point code field in the message to determinewhether the message is addressed to the true point code of the routingnode that houses LIM 300 or to one of the secondary true point codesassociated with the multiple point code routing node that houses LIM300. This is fundamentally different from prior art discriminationapplications, which only recognized a single true point code.

If discrimination application 308 determines that the received messageis addressed to one of the true point codes or the secondary point codesof the multiple point code routing node, discrimination application 308passes the message to distribution application 312. Distributionapplication 312 analyzes destination point code field in the receivedmessage and determines the appropriate address of the processing modulewithin the multiple point code routing node for processing the receivedmessage. For network management messages that affect routing tables,discrimination application 312 may distribute the messages to allintended processing modules whose routing tables could be affected. Thenetwork management application associated with each card or processingmodule would then update the associated routing table. Becausedistribution application 312 is configured to internally route messagesaddressed to any of the multiple true point codes of routing node 270,the functionality of distribution application is different from priorart distribution applications, which only recognize a single true pointcode.

If discrimination application 308 determines that a received message isnot addressed to one of the true point codes of the multiple point coderouting node, discrimination application passes the message to routingapplication 310. Routing application 310 uses the data stored in routingand secondary point code database 314 to route the message to the cardassociated with the appropriate external signaling link. Because LIM 300is provisioned to recognize multiple point codes as true point codes ofan MPC routing node, the MPC routing node can replace multiple nodesexisting in a communications network without requiring modification ofthe other network node.

Secondary-Point-Code-Based Network Management Example

FIG. 8 illustrates an exemplary communications network that will be usedto demonstrate the operation of MPC routing nodes in performing networkmanagement according to embodiments of the present invention. In FIG. 8,a network 500 includes a portion of networks 266 and 268 mated MPCrouting nodes 270 and 280. Network 500 also includes an STP 502 and anSP 504. STP 502 is assigned a true point code of 3-3-3, and SP 504 isassigned a true point code of 3-3-1. SPs within network 266 communicatewith the MPC routing nodes 270 and 280 using the true point code valuesof 1-1-1 and 1-1-2, respectively. Likewise, SPs network 268 communicatewith MPC routing nodes 270 and 280 using the true point code values of2-2-2 and 2-2-3, respectively. In this example, STP 502 and SP 504communicate with MPC routing nodes 270 and 280 using the true point codevalues of 1-1-1 and 1-1-2, respectively.

The operating scenario shown in FIG. 8 corresponds to a linkset failurethat isolates SP 504 (i.e., PC: 3-3-1). FIG. 9 is a flow chartillustrating MPC routing node functionality associated with signalinglink failure according to an embodiment of the present invention.Beginning with step ST1, the only linkset connecting SP 504 to STP 502fails or is taken out of service. As such, STP 502 is no longer able tocommunicate with SP 504, and STP 502 generates an SS7 MTP level 3network management message, referred to as a transfer prohibited (TFP)message (ST2). The TFP message generated by STP 502 includes routinglabel information that specifies an originating point code value of3-3-3 (i.e., the true point code of STP 502), a destination point code(DPC) value of 1-1-1 (i.e., the true point code of MPC routing node270), and a concerned point code (CPC) value of 3-3-1 (i.e., the pointcode of the isolated SP 504).

In step ST3, the TFP message is received by MPC routing node 270. Therouting and secondary point code database is subsequently accessed todetermine whether other routes are available to deliver signalingmessage traffic to the concerned point code of isolated SP 504. In thisparticular example, there are no alternate routes that MPC routing node270 may utilize to re-route signaling message traffic around the failedlinkset (ST4). As indicated in the example network architecture shown inFIG. 8, the only path from MPC routing node 270 to SP 504 is via STP 502and the failed signaling link. In this example, the same lack ofalternate routes is true for mate MPC routing node 280.

Given the determination that no alternate routes exist from either MPCrouting node 270 or 280 to isolated SP 504, MPC routing node 270generates a second TFP message that includes routing label informationthat specifies an originating point code value of 1-1-1 (i.e., the truepoint code of MPC routing node 270), a destination point code value of1-0-0 (i.e., the point code of SP 118), and a concerned point code valueof 3-3-1 (i.e., the point code of isolated SP 504), as indicated in stepST5. MPC routing node 270 also generates a third TFP message whichincludes routing label information that specifies an originating pointcode value of 2-2-2 (i.e., the secondary true point code of MPC routingnode 270), a destination point code value of 2-0-0 (i.e., the point codeof SP 122), and a concerned point code value of 3-3-1 (i.e., the pointcode of isolated SP 504), as indicated in step ST6. In step ST7, MPCrouting node 270 generates and sends another TFP message to mated MPCrouting node 280. This TFP message includes an OPC value of 1-1-2 and aDPC value of 1-1-1. The values for the OPC and DPC fields in the variousnetwork management messages may be selected as described above based onthe STP(s) being replaced by the MPC routing node.

Upon receiving the TFP messages from MPC routing node 270 or 280, SPs118 and 122 subsequently mark SP 504 as prohibited and consequently donot attempt to send any messages to the isolated SP (i.e., PC: 3-3-1).SPs 118 and 122 periodically generate and transmit routeset testprohibited network management messages that query for the availabilitystatus of the isolated SP 504. In the case of SP 122, an RSP message isgenerated and sent to MPC routing node 270. The RSP message includesrouting label information that specifies an originating point code valueof 2-0-0 (i.e., the point code of SP 122), a destination point codevalue of 2-2-2 (i.e., the secondary true point code of MPC routing node270), and a concerned point code value of 3-3-1 (i.e., the point code ofisolated SP 504), as indicated in step ST8. When SP 118 generates andsends an RSP message to MPC routing node 270, the RSP message includes adestination point code value of 1-1-1 (i.e., the true point code of MPCrouting node 270). Both SPs 118 and 122 will continue to periodicallypoll the MPC routing nodes until one or both of the MPC routing nodesresponds with a transfer allowed network management message. The TFAmessage sent to SP 118 by MPC routing node 270 will include an OPC valueof 1-1-1 (i.e., the true point code of MPC routing node 270), while theTFA message sent to SP 122 by MPC routing node 270 will include an OPCvalue of 2-2-2 (i.e., the secondary true point code of MPC routing node270).

Because the MPC routing node according to embodiments of the presentinvention is capable of inserting different true point code values inthe originating and destination point code fields of network managementmessages that it originates, the multiple point code routing node isable to seamlessly replace the network management functionality ofmultiple STPs. For example, in the scenario described with respect toFIGS. 8 and 9, MPC routing node 270 uses its true point code of 1-1-1when originating network management messages directed to signalingpoints in network 268. MPC routing node 270 used its secondary truepoint code of 2-2-2 in originating network management messages directedto nodes in network 266. Similarly, MPC routing node 280 utilizes itstrue point code of 1-1-2 when originating network management messages tobe sent to network 266. MPC routing node 280 utilizes its secondary truepoint code of 2-2-3 when originating network management messagesdestined for network 268. Thus, MPC routing nodes 270 and 280 canseamlessly replace the network management functionality of two matedpairs of STPs or signaling gateways previously configured to communicatewith LATA A and LATA B networks 266 and 268.

Multiple C Linkset Capability

In the example illustrated in FIG. 8, MPC routing node 270 is configuredto recognize 1-1-2 as the adjacent point code of MPC routing node 280 onlinkset 1. MPC routing node 270 is also configured to recognize 2-2-3 asthe adjacent point code of MPC routing node 280 on linkset 2. Similarly,MPC routing node 280 is configured to recognize 1-1-1 as the adjacentpoint code of MPC routing node 270 on linkset 3. MPC routing node 280 isalso configured to recognize 2-2-2 as the adjacent point code of MPCrouting node 270 on linkset 4. Because MPC routing nodes 270 and 280 caneach recognize multiple adjacent point codes for their mate multiplepoint code routing node, the MPC routing nodes according to embodimentsof the present invention allow multiple C linksets to be used ininterconnecting MPC routing nodes. For example, an additional C linksetcan be used for each additional adjacent point code. Utilizingadditional C linksets between mated multiple point code routing nodesincreases the reliability of a telecommunications system.

In an alternate embodiment, rather than provisioning multiple SS7 Clinksets for the multiple adjacent point codes, a network operator mayconnect MPC routing nodes 270 and 280 with a single IP link and useadjacent point codes and secondary adjacent point codes to implementmultiple logical C linksets within the IP link. In the exampleillustrative in FIG. 8, the multiple C linksets between MPC routingnodes 270 and 280 may be replaced by a single IP signaling link. MPCrouting node 270 may recognize 1-2-2 as the APC and 2-3-3 as thesecondary APC on the IP linkset. Similarly, MPC routing node 280 mayrecognize 1-1-1 as the APC and 2-2-2 as the secondary APC on the IPlinkset.

Thus, the present invention includes a multiple point code routing nodethat originates and processes messages using multiple true point codes.The multiple point code routing node can thus replace multiple STPs thatlocated in different networks without reconfiguring all of the nodes inthe network. Because a single node (or mated pair) can seamlessly andefficiently replace multiple STPs, telecommunications networks can beupgraded and reliability can be increased.

It will be appreciated that various details of the invention may bechanged without departing from the scope of the invention. Furthermore,the foregoing description is for the purpose of illustration only, andnot for the purpose of limitation—the invention being defined by theclaims.

1. A multiple point code signal transfer point (STP) having adistributed internal architecture for processing signaling messagesaddressed to any one of a plurality of true point codes, the STPcomprising: (a) a plurality of link interface modules configured torecognize a plurality of true point codes as point codes of the STP andto forward signaling messages having the true point codes from externalsignaling links to processing modules within the STP for furtherprocessing; (b) a plurality of processing modules within the STP forreceiving the signaling messages addressed to the true point codes fromthe SS7 link interface modules and for processing the signalingmessages; and (c) a high-speed communications bus interconnecting thelink interface modules and the processing modules for communicating thesignaling messages between the link interface modules and the processingmodules.